var appSolicitudes = angular.module('Solicitudes', [ 'ngRoute', 'ngCookies' ]);

var URL_SERVICIO_VALIDAR_GERENTE = "http://localhost:3306/waWebService/rest/gerente";

appSolicitudes.factory('auth', function($cookies, $location) {

	return {

		login : function(usuario) {

			$cookies.nombreUsuario = usuario;
			$location.url('/listaSolicitudes');

		},

		validarEstado : function() {

			if (typeof ($cookies.nombreUsuario) == 'undefined') {

				$location.url('/');
			}

			if (typeof ($cookies.nombreUsuario) != 'undefined'
					&& $location.url() == '/') {

				$location.url('/listaSolicitudes')
			}

		}

	};

});

// Cuando la ruta es / me lleva login.html
appSolicitudes.config([ '$routeProvider', function($routeProvider) {

	$routeProvider.when('/', {
		templateUrl : 'login.html',
		controller : 'contLogin'
	});

	$routeProvider.when('/listaSolicitudes', {

		templateUrl : 'listaSolicitudes.html',

		controller : 'contSolicitudes'
	});

	$routeProvider.when('/Solicitud', {

		templateUrl : 'Solicitud.html',
		controller : 'contSolicitud'
	});

	$routeProvider.when('/Respuesta', {

		templateUrl : 'Respuesta.html',
		controller : 'contRespuesta'
	});

} ]);

appSolicitudes.controller('contLogin', function($scope, auth, solicitudes) {

	$scope.login = function() {
		solicitudes.validar($scope.nombreUsuario, $scope.pws, $scope.cedula).success(function (data){
			if(data != ""){
				alert("Datos erroneos");
				$scope.nombreUsuario = "";
				$scope.pws = "";
				$scope.cedula = "";
				return;
			}
			auth.login($scope.nombreUsuario);
		});
	};

});

appSolicitudes.controller('contSolicitudes', function($scope, $location) {

	$scope.agregar = function() {

		$location.url('/Solicitud');
	};

});

appSolicitudes.controller('contSolicitud', function($scope, $location) {

	$scope.solicitud = {
		id_solicitud : "",
		Nombre : "",
		Apellido : "",
		Email : "",
		Telefono : "",
		Celular : "",
		TipoProducto : "",
		TipoSolicitud : "",
		Sucursal : "",
		Estado : "",
		Texto : ""
	};

	$scope.guardar = function() {

		// $location.url('/Solicitud');
	};

});

appSolicitudes.controller('contRespuesta', function($scope, $location) {

	$scope.enviar = function() {

	};

});

appSolicitudes.run(function($rootScope, auth) {
	//se ejecuta cada vez que cambia la ruta
	$rootScope.$on('$routeChangestart', function (){
		auth.validarEstado();
	});
});


appSolicitudes.service('solicitudes', function ($http){
	this.validar = function(usuario, contraseña, cedula){
		return $http ({
			method : "GET",
			url: URL_SERVICIO_VALIDAR_GERENTE,
			params: {
				user : usuario,
				password: contraseña,
				cedula : cedula
			}	
		});
	};
});

